<!DOCTYPE html>
<html>

<head>
	<meta charset="utf-8">
	<title>菜单列表</title>
	<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
	<link rel="stylesheet" href="/static/css/oksub.css">
	<script type="text/javascript" src="/static/lib/loading/okLoading.js"></script>
	<link rel="stylesheet" href="/static/css/font-awesome/css/font-awesome.min.css">
</head>

<body>
	<div class="ok-body">
		<!--模糊搜索区域-->
		<div class="layui-row">

		</div>
		<!--数据表格-->
		<table class="layui-hide" id="tableId" lay-filter="tableFilter"></table>
	</div>
	<!--js逻辑-->
	<script src="/static/lib/layui/layui.js"></script>
	<script src="/static/lib/layui/lay/lay-config.js"></script>
	<script>
		layui.use(["element", "jquery", "table", 'treetable', "form", "laydate", "okLayer", "okUtils", "okMock"], function () {
			let table = layui.table;
			let treetable = layui.treetable;
			let form = layui.form;
			let laydate = layui.laydate;
			let okLayer = layui.okLayer;
			let okUtils = layui.okUtils;
			let okMock = layui.okMock;
			let $ = layui.jquery;

			okLoading.close($);

			laydate.render({ elem: "#startTime", type: "datetime" });
			laydate.render({ elem: "#endTime", type: "datetime" });

			let userTable = treetable.render({
				treeColIndex: 2,
				treeSpid: 0,
				treeDefaultClose: true,
				treeIdName: 'id',
				treePidName: 'pid',
				elem: '#tableId',
				url: '{:url("index")}',
				//limit: 20,
				page: false,
				toolbar: true,
				toolbar: "#toolbarTpl",
				//height:'full',
				cols: [[
					{ type: "checkbox", width: 50 },
					{ field: 'id', width: 80, title: 'ID', sort: true, align: 'center', },
					{ field: 'title', minWidth: 250, title: '菜单名' },
					{ field: 'name', title: '链接' },
					{ field: 'icon', title: '图标', templet: "#iconTpl" },
					{ field: "ismenu", title: "是否菜单", width: 100, templet: "#ismenuTpl" },
					{ field: "status", title: "状态", width: 100, templet: "#statusTpl" },
					//{field: 'createtime_text',  title: '创建时间'},
					{ title: "操作", align: "center", fixed: "right", templet: "#operationTpl" }
				]],
				done: function (res, curr, count) {
					console.info(res, curr, count);
				}
			});
			function expand() {
				treetable.expandAll('#tableId');
			}

			function fold() {
				treetable.foldAll('#tableId');
			}
			form.on("submit(search)", function (data) {
				userTable.reload({
					where: data.field,
					page: { curr: 1 }
				});
				return false;
			});

			table.on("toolbar(tableFilter)", function (obj) {
				switch (obj.event) {
					case "batchEnabled":
						batchEnabled();
						break;
					case "batchDisabled":
						batchDisabled();
						break;
					case "batchDel":
						batchDel();
						break;
					case "add":
						add();
						break;
					case "expand":
						expand();
						break;
					case "fold":
						fold();
						break;
				}
			});

			table.on("tool(tableFilter)", function (obj) {
				let data = obj.data;
				switch (obj.event) {
					case "edit":
						edit(data);
						break;
					case "del":
						del(data.id);
						break;
				}
			});

			function batchEnabled() {
				okLayer.confirm("确定要批量启用吗？", function (index) {
					layer.close(index);
					let idsStr = okUtils.tableBatchCheck(table);
					if (idsStr) {
						okUtils.ajax("{:url('setNormal')}", "put", { idsStr: idsStr }, true).done(function (response) {
							if (response.code == 1) {
								console.log(response);
								okUtils.tableSuccessMsg(response.msg);
								location.reload();
							} else {
								okLayer.greenTickMsg(response.msg, function () {

								})
							}
						}).fail(function (error) {
							console.log(error)
						});
					}
				});
			}

			function batchDisabled() {
				okLayer.confirm("确定要批量停用吗？", function (index) {
					layer.close(index);
					let idsStr = okUtils.tableBatchCheck(table);
					if (idsStr) {
						okUtils.ajax("{:url('setStop')}", "put", { idsStr: idsStr }, true).done(function (response) {

							if (response.code == 1) {
								console.log(response);
								okUtils.tableSuccessMsg(response.msg);
								location.reload();
							} else {
								okLayer.greenTickMsg(response.msg, function () {

								})
							}
						}).fail(function (error) {
							console.log(error)
						});
					}
				});
			}

			function batchDel() {
				okLayer.confirm("确定要批量删除吗？", function (index) {
					layer.close(index);
					let idsStr = okUtils.tableBatchCheck(table);
					if (idsStr) {
						okUtils.ajax("{:url('delete')}", "delete", { idsStr: idsStr }, true).done(function (response) {
							//console.log(response);
							//okUtils.tableSuccessMsg(response.msg);
							if (response.code == 1) {
								console.log(response);
								okUtils.tableSuccessMsg(response.msg);
								location.reload();
							} else {
								okLayer.greenTickMsg(response.msg, function () {

								})
							}
						}).fail(function (error) {
							console.log(error)
						});
					}
				});
			}

			function add() {
				okLayer.open("添加", "{:url('add')}", "90%", "90%", null, function () {
					location.reload();
				})
			}

			function edit(data) {
				okLayer.open("更新用户", "edit?id=" + data.id, "90%", "90%", function (layero) {
					//let iframeWin = window[layero.find("iframe")[0]["name"]];
					//iframeWin.initForm(data);
				}, function () {
					location.reload();
				})
			}

			function del(id) {
				okLayer.confirm("确定要删除吗？", function () {
					okUtils.ajax("{:url('delete')}", "delete", { idsStr: id }, true).done(function (response) {


						if (response.code == 1) {
							console.log(response);
							okUtils.tableSuccessMsg(response.msg);
							location.reload();
						} else {
							okLayer.greenTickMsg(response.msg, function () {

							})
						}

					}).fail(function (error) {
						console.log(error)
					});
				})
			}
		})
	</script>
	<!-- 头工具栏模板 -->
	<script type="text/html" id="toolbarTpl">
	<div class="layui-btn-container">
		<button class="layui-btn layui-btn-sm" lay-event="add">添加</button>
		<button class="layui-btn layui-btn-sm layui-btn-normal" lay-event="batchEnabled">批量启用</button>
		<button class="layui-btn layui-btn-sm layui-btn-warm" lay-event="batchDisabled">批量停用</button>
		<button class="layui-btn layui-btn-sm layui-btn-danger" lay-event="batchDel">批量删除</button>
	
		 <button class="layui-btn" id="btn-expand" lay-event="expand">全部展开</button>
		  <button class="layui-btn layui-btn-normal" id="btn-fold" lay-event="fold">全部折叠</button>
	</div>
</script>
	<!-- 行工具栏模板 -->
	<script type="text/html" id="operationTpl">
	<a href="javascript:" title="编辑" lay-event="edit"><i class="layui-icon">&#xe642;</i></a>
	<a href="javascript:" title="删除" lay-event="del"><i class="layui-icon">&#xe640;</i></a>
</script>

	<script type="text/html" id="statusTpl">
	{{#  if(d.status == 'normal'){ }}
	<span class="layui-btn layui-btn-normal layui-btn-xs">启用</span>
	{{#  } else if(d.status != 'normal') { }}
	<span class="layui-btn layui-btn-warm layui-btn-xs">停用</span>
	{{#  } }}
</script>
	<script type="text/html" id="iconTpl">
	<i class="fa {{d.icon}}"></i>
</script>
	<script type="text/html" id="ismenuTpl">
	{{#  if(d.ismenu == 0){ }}
	<span class="layui-btn layui-btn-warm layui-btn-xs">否</span>
	{{#  } else if(d.ismenu != 0) { }}
	<span class="layui-btn layui-btn-normal layui-btn-xs">是</span>
	{{#  } }}
</script>



</body>

</html>